package rede;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class Usuario {

	
	private String nome;
	private String senha;
	private String login;
        private String descricao;
        private String estadoCivil;
        private String aniverario;
        private String cidadeNatal;
        private List<Usuario> listaDeAmigos;
        private List<String> mensagensEnviadas;
        private List<String> mensagensRecebidas;
        private List<Foto> Fotos;
        

	public Usuario(String login, String senha, String nome) {
		this.login = login;
		this.senha = senha;
		this.nome = nome;
		
	}
	
	public String getLogin() {
		return login;
	}
	
	public String getNome() {
		return nome;
	}
	
	public String getSenha() {
		return senha;
	}
	
	@Override
	public boolean equals(Object obj) {
	
		Usuario outro = (Usuario) obj;
		
		if (outro.login.equals(this.login)) return true;
		return false;
		
		
	}
        
        public void adicionarAmigo(Usuario usuario){
            this.getListaDeAmigos().add(usuario);
        }
        
        public void adicionarMensagemEnviada(String mensagem){
            this.getMensagensEnviadas().add(mensagem);
        }

        public void adicionarMensagemRecebidas(String mensagem){
            this.getMensagensRecebidas().add(mensagem);
        }
        
        public void adidionarFoto(Foto foto){
            this.Fotos.add(foto);
        }
        
    /**
     * @param nome the nome to set
     */
    public void setNome(String nome) {
        this.nome = nome;
    }

    /**
     * @param senha the senha to set
     */
    public void setSenha(String senha) {
        this.senha = senha;
    }

    /**
     * @param login the login to set
     */
    public void setLogin(String login) {
        this.login = login;
    }

    /**
     * @return the descricao
     */
    public String getDescricao() {
        return descricao;
    }

    /**
     * @param descricao the descricao to set
     */
    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    /**
     * @return the aniverario
     */
    public String getAniverario() {
        return aniverario;
    }

    /**
     * @param aniverario the aniverario to set
     */
    public void setAniverario(String aniverario) {
        this.aniverario = aniverario;
    }

    /**
     * @return the cidadeNatal
     */
    public String getCidadeNatal() {
        return cidadeNatal;
    }

    /**
     * @param cidadeNatal the cidadeNatal to set
     */
    public void setCidadeNatal(String cidadeNatal) {
        this.cidadeNatal = cidadeNatal;
    }

    /**
     * @return the estadoCivil
     */
    public String getEstadoCivil() {
        return estadoCivil;
    }

    /**
     * @param estadoCivil the estadoCivil to set
     */
    public void setEstadoCivil(String estadoCivil) {
        this.estadoCivil = estadoCivil;
    }

    /**
     * @return the listaDeAmigos
     */
    public List<Usuario> getListaDeAmigos() {
        return listaDeAmigos;
    }

    /**
     * @param listaDeAmigos the listaDeAmigos to set
     */
    public void setListaDeAmigos(ArrayList<Usuario> listaDeAmigos) {
        this.listaDeAmigos = listaDeAmigos;
    }

    /**
     * @return the mensagensEnviadas
     */
    public List<String> getMensagensEnviadas() {
        return mensagensEnviadas;
    }

    /**
     * @param mensagensEnviadas the mensagensEnviadas to set
     */
    public void setMensagensEnviadas(List<String> mensagensEnviadas) {
        this.mensagensEnviadas = mensagensEnviadas;
    }

    /**
     * @return the mensagensRecebidas
     */
    public List<String> getMensagensRecebidas() {
        return mensagensRecebidas;
    }

    /**
     * @param mensagensRecebidas the mensagensRecebidas to set
     */
    public void setMensagensRecebidas(List<String> mensagensRecebidas) {
        this.mensagensRecebidas = mensagensRecebidas;
    }

    /**
     * @return the Fotos
     */
    public List<Foto> getFotos() {
        return Fotos;
    }

    /**
     * @param Fotos the Fotos to set
     */
    public void setFotos(List<Foto> Fotos) {
        this.Fotos = Fotos;
    }
	
}